package cate.common.table.d;

import easy.java.codec.JsonCodec;
import easy.java.dev.note.NoteClass;
import easy.java.dev.note.NoteField;
import easy.java.io.file.FileWrite;
import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;
import lombok.extern.slf4j.Slf4j;

import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@Slf4j
@NoteClass(value = "操作代号")
public class GDOperation {
    @NoteField(value = "无操作")
    public static final int NULL = 0;

    @NoteField(value = "演示")
    public static final int DEMO = -10086;
    @NoteField(value = "GM补偿")
    public static final int GM_COMPENSATE = 11;
    @NoteField(value = "GM赠送")
    public static final int GM_PRESENT = 12;
    @NoteField(value = "使用礼包码")
    public static final int GIFT_CODE_USE = 13;
    @NoteField(value = "充值规则破坏")
    public static final int PAY_RULE_BREAK = 14;
    @NoteField(value = "封测充值返还")
    public static final int BETA_PAY_REFUND = 15;

    @NoteField(value = "叶子戏外部下单充值")
    public static final int PAY_OUTSIDE = 17;

    @NoteField(value = "使用道具")
    public static final int USE_PROP = 20;
    @NoteField(value = "背包扩容")
    public static final int CAPACITY_ADD_REQ = 21;
    @NoteField(value = "道具出售")
    public static final int PROP_SELL = 22;
    @NoteField(value = "碎片合成")
    public static final int FRAGMENT_COMPOSITE = 23;
    @NoteField(value = "使用自选礼包")
    public static final int USE_PACK_CHOOSE = 24;
    @NoteField(value = "碎片出售")
    public static final int FRAGMENT_SELL = 25;
    @NoteField(value = "使用连开礼包")
    public static final int USE_CONTINUE_PACK = 26;
    @NoteField(value = "装备出售")
    public static final int EQUIP_SELL = 30;
    @NoteField("装备宝箱使用")
    public static final int EQUIP_BOX_USE = 31;
    @NoteField("徽章宝箱使用")
    public static final int RUNE_BOX_USE = 32;
    @NoteField("灵器碎片合成")
    public static final int FAIRY_PART_COMPOSITE = 40;
    @NoteField("灵器碎片出售")
    public static final int FAIRY_PART_SELL = 41;


    @NoteField(value = "vip升级奖励")
    public static final int VIP_LEVEL_REWARD = 50;
    @NoteField(value = "vip特权礼包")
    public static final int VIP_GIFT_BUY = 51;
    @NoteField(value = "vip每日奖励")
    public static final int VIP_DAILY_REWARD = 52;

    @NoteField(value = "主角进阶")
    public static final int ROLE_GRADE_UP = 100;
    @NoteField(value = "主角升级")
    public static final int ROLE_LEVEL_UP = 101;

    @NoteField(value = "圣器淬炼")
    public static final int HALLOWS_QUENCHING = 200;
    @NoteField(value = "圣器升级技能")
    public static final int HALLOWS_UPGRADE_SKILL = 201;
    @NoteField(value = "圣器圣印升级")
    public static final int HALLOWS_UPGRADE_HOLY_SEAL = 202;
    @NoteField(value = "圣器精炼")
    public static final int HALLOWS_REFINE = 203;
    @NoteField(value = "圣器幻化-激活皮肤")
    public static final int HALLOWS_HALLUCINATE_ACTIVE_SKIN = 204;
    @NoteField(value = "圣器重铸")
    public static final int HALLOWS_BACK = 205;

    @NoteField("金币商店购买")
    public static final int GOLD_MALL_BUY = 300;


    @NoteField(value = "英雄升级")
    public static final int HERO_LEVEL_UP = 500;
    @NoteField(value = "英雄进阶")
    public static final int HERO_GRADE_UP = 501;
    @NoteField(value = "英雄升星")
    public static final int HERO_STAR_UP = 502;
    @NoteField(value = "英雄重生")
    public static final int HERO_REBORN = 503;
    @NoteField(value = "英雄回退")
    public static final int HERO_BACK = 504;
    @NoteField(value = "英雄放逐")
    public static final int HERO_SACRIFICE = 505;
    @NoteField(value = "食灵置换")
    public static final int HERO_REPLACE = 508;
    @NoteField(value = "食灵继承")
    public static final int HERO_INHERIT = 509;
    @NoteField(value = "英雄兑唤")
    public static final int HERO_CONVERT = 510;
    @NoteField(value = "英雄羁绊-穿")
    public static final int HERO_YOKE_ON = 511;
    @NoteField(value = "英雄羁绊-脱")
    public static final int HERO_YOKE_OFF = 512;
    @NoteField(value = "英雄回退-限时回退")
    public static final int LIMIT_HERO_BACK = 513;


    @NoteField(value = "装备超越")
    public static final int EQUIP_OVERSTEP = 600;
    @NoteField(value = "装备回退")
    public static final int EQUIP_BACK = 601;
    @NoteField(value = "装备铭刻")
    public static final int EQUIP_RUBBING = 602;
    @NoteField(value = "装备重铸")
    public static final int EQUIP_REFORGE = 603;
    @NoteField(value = "装备卸下")
    public static final int EQUIP_OFF = 604;
    @NoteField(value = "装备穿戴")
    public static final int EQUIP_ON = 605;
    @NoteField(value = "装备转换")
    public static final int EQUIP_TRANSLATE = 606;
    @NoteField(value = "装备合成")
    public static final int EQUIP_FORGE = 607;
    @NoteField(value = "神装装备注灵")
    public static final int EQUIP_PUMP = 608;
    @NoteField(value = "神装装备突破")
    public static final int EQUIP_BREAKTHROUGH = 609;


    //捐献
    @NoteField(value = "协会捐献")
    public static final int GUILD_DONATE = 700;
    @NoteField(value = "协会活跃箱子领取")
    public static final int GUILD_DONATE_REWARD = 701;
    //basic
    @NoteField(value = "协会改名")
    public static final int GUILD_RENAME = 702;
    @NoteField(value = "协会招募")
    public static final int GUILD_RERUIT = 703;
    @NoteField(value = "协会创建")
    public static final int GUILD_CREATE = 704;

    @NoteField(value = "协会发红包")
    public static final int GUILD_SEND_ENVELOPE = 705;
    @NoteField(value = "协会领红包")
    public static final int GUILD_GET_ENVELOPE = 706;
    //boss
    @NoteField(value = "协会boss买buff")
    public static final int GUILD_BOSS_BUY_BUFF = 707;

    @NoteField(value = "协会boss伤害排行榜")
    public static final int GUILD_BOSS_RANK = 708;
    @NoteField(value = "协会boss击杀奖励")
    public static final int GUILD_BOSS_KILL = 709;
    //affair
    @NoteField(value = "协会内政任务完成单条奖励领取")
    public static final int GUILD_AFFAIRS_REWARD = 710;
    @NoteField(value = "协会内政升级")
    public static final int GUILD_AFFAIRS_UPGRADE = 711;
    @NoteField(value = "协会内政任务刷新")
    public static final int GUILD_AFFAIRS_REFRESH = 712;
    //商店
    public static final int GUILD_MALL_BUY = 713;
    //技能
    public static final int GUILD_UPGRADE_SKILL = 714;
    public static final int GUILD_BACK_SKILL = 715;
    //宝库
    public static final int GUILD_PUT_TREASURE_IN = 716;
    public static final int GUILD_TAKE_TREASURE_OUT = 717;

    @NoteField("公会秘境-挑战")
    public static final int GUILD_FAIRYLAND_CHALLENGE = 720;
    @NoteField("公会秘境-追击")
    public static final int GUILD_FAIRYLAND_FOLLOW = 721;
    @NoteField("公会秘境-排行")
    public static final int GUILD_FAIRYLAND_RANK = 722;
    @NoteField("公会秘境-击杀")
    public static final int GUILD_FAIRYLAND_KILL = 723;


    @NoteField(value = "灵器升级")
    public static final int FAIRY_LEVEL_UP = 800;
    @NoteField(value = "灵器回炉")
    public static final int FAIRY_BACK = 801;
    @NoteField(value = "灵器分解")
    public static final int FAIRY_DECOMPOSE = 802;
    @NoteField("灵器穿戴")
    public static final int FAIRY_ON = 803;
    @NoteField("灵器卸下")
    public static final int FAIRY_OFF = 804;
    @NoteField("灵器置换")
    public static final int FAIRY_REPLACE = 805;

    @NoteField(value = "徽章强化")
    public static final int RUNE_LEVEL_UP = 900;
    @NoteField(value = "徽章重铸")
    public static final int RUNE_RECAST = 901;
    @NoteField(value = "徽章突破")
    public static final int RUNE_BREAK = 902;
    @NoteField(value = "徽章合成")
    public static final int RUNE_FORGE = 903;
    @NoteField(value = "徽章合成奖励")
    public static final int RUNE_REWARD = 904;
    @NoteField(value = "徽章穿戴")
    public static final int RUNE_ON = 905;
    @NoteField(value = "徽章卸下")
    public static final int RUNE_OFF = 906;
    @NoteField("徽章进阶")
    public static final int RUNE_GRADE_UP = 907;
    @NoteField("徽章分解")
    public static final int RUNE_DECOMPOSE = 908;

    @NoteField(value = "觉醒灵器升级")
    public static final int AWAKEN_FAIRY_LEVEL_UP = 1000;
    @NoteField(value = "觉醒灵器回炉")
    public static final int AWAKEN_FAIRY_BACK = 1001;
    @NoteField(value = "觉醒灵器分解")
    public static final int AWAKEN_FAIRY_DECOMPOSE = 1002;
    @NoteField("觉醒灵器穿戴")
    public static final int AWAKEN_FAIRY_ON = 1003;
    @NoteField("觉醒灵器卸下")
    public static final int AWAKEN_FAIRY_OFF = 1004;

    @NoteField(value = "手办升级")
    public static final int FURNITURE_LEVEL_UP = 1100;
    @NoteField(value = "手办回收")
    public static final int FURNITURE_RECYCLE = 1101;
    @NoteField(value = "手办重生")
    public static final int FURNITURE_REBORN = 1102;
    @NoteField(value = "手办礼包")
    public static final int FURNITURE_GIFT_REWARD = 1103;
    @NoteField(value = "手办摆放")
    public static final int FURNITURE_ON = 1104;
    @NoteField(value = "手办拿下")
    public static final int FURNITURE_OFF = 1105;
    @NoteField("手办洗练")
    public static final int FURNITURE_RECAST = 1106;

    @NoteField(value = "星格升级")
    public static final int SPICE_LEVEL_UP = 1200;
    @NoteField(value = "星格洗练")
    public static final int SPICE_RANDOM = 1201;
    @NoteField(value = "星格重置")
    public static final int SPICE_REBORN = 1202;
    @NoteField(value = "星格穿戴")
    public static final int SPICE_ON = 1203;
    @NoteField(value = "星格卸下")
    public static final int SPICE_OFF = 1204;
    @NoteField(value = "星格突破")
    public static final int SPICE_BREAK = 1205;
    @NoteField(value = "星格融合")
    public static final int SPICE_FUSE = 1206;
    @NoteField("使用直升瓶")
    public static final int SPICE_LEVEL_ITEM = 1207;

    @NoteField(value = "商城刷新")
    public static final int MALL_REFRESH = 1300;
    @NoteField(value = "商城购买")
    public static final int MALL_BUY = 1301;
    @NoteField(value = "商城一键购买")
    public static final int MALL_FAST_BUY = 1302;

    @NoteField(value = "主线挑战")
    public static final int ADVENTURE_CHALLENGE = 1400;
    @NoteField(value = "主线一键解锁")
    public static final int ADVENTURE_FAST_UNLOCK = 1401;
    @NoteField(value = "主线领取章节寻回奖励")
    public static final int ADVENTURE_RECV_CHARPTER_RWD = 1402;
    @NoteField(value = "主线冒险挂机")
    public static final int ADVENTURE_HANG = 1403;
    @NoteField(value = "主线快速补给")
    public static final int ADVENTURE_QUICK_FIGHT = 1404;
    @NoteField(value = "主线冒险通关奖励")
    public static final int ADVENTURE_PASS_REWARD = 1405;
    @NoteField(value = "主线冒险特殊奖励")
    public static final int ADVENTURE_SPECIAL_REWARD = 1406;
    @NoteField(value = "探险任务刷新")
    public static final int ADVENTURE_TASK_REFRESH = 1450;
    @NoteField(value = "探险任务单次领取")
    public static final int ADVENTURE_TASK_SIGNLE_REWARD = 1451;
    @NoteField(value = "探险任务领取所有任务")
    public static final int ADVENTURE_TASK_ALL_REWARD = 1452;
    @NoteField(value = "冒险boss奖励")
    public static final int ADVENTURE_BOSS_REWARD = 1453;

    @NoteField(value = "转盘刷新")
    public static final int TREASURE_TURNTABLE_REFRESH = 1500;
    @NoteField(value = "转盘抽奖")
    public static final int TREASURE_TURNTABLE_DRAW_REWARD = 1501;
    @NoteField(value = "转盘积分奖励")
    public static final int TREASURE_TURNTABLE_SCORE_REWARD = 1502;

    @NoteField(value = "世界之树解锁英雄共享栏位")
    public static final int WORLD_TREE_HEROBOX_UNLOCK = 1600;
    @NoteField(value = "世界之树清楚共享CD")
    public static final int WORLD_TREE_CLEAR_CD = 1601;
    @NoteField(value = "世界之树移除共享")
    public static final int WORLD_TREE_DEL_SHARE = 1602;
    @NoteField("世界树炼制消耗")
    public static final int WORLD_TREE_REFINE_BEGIN = 1603;
    @NoteField("世界树炼制奖励")
    public static final int WORLD_TREE_REFINE_REWARD = 1604;
    @NoteField("世界树加成等级提升")
    public static final int WORLD_TREE_ADDITION_LEVEL_UP = 1605;

    @NoteField(value = "领取英雄图鉴奖励")
    public static final int INTRODUCTION_HERO_REWARD = 1700;
    @NoteField(value = "领取羁绊图鉴奖励")
    public static final int INTRODUCTION_YOKE_REWARD = 1701;

    @NoteField(value = "族徽进阶")
    public static final int RACE_BADGE_GRADE_UP = 1800;
    @NoteField(value = "族徽升级")
    public static final int RACE_BADGE_LEVEL_UP = 1801;

    @NoteField(value = "手办定制")
    public static final int FURNITURE_CALL = 1900;
    @NoteField(value = "手办领取宝盒")
    public static final int FURNITURE_RWD = 1901;

    @NoteField("提升好感度")
    public static final int FAVORABILITY_IMPROVE = 2000;
    @NoteField("重置好感度")
    public static final int FAVORABILITY_RESET = 2001;

    @NoteField(value = "美食神殿挑战")
    public static final int TOWER_CHALLENGE = 2100;
    @NoteField(value = "美食神殿通关奖励领取")
    public static final int TOWER_REWARD = 2101;
    @NoteField(value = "美食神殿挂机奖励")
    public static final int TOWER_HANG_REWARD = 2102;

    @NoteField(value = "积分赛挑战")
    public static final int POINT_RACE_CHALLENGE = 2200;
    @NoteField(value = "积分赛赛季宝箱奖励")
    public static final int POINT_RACE_SEASON_REWARD = 2201;
    @NoteField(value = "积分赛购买挑战券")
    public static final int POINT_RACE_BUY_TICKET = 2202;

    @NoteField(value = "领取迷失神庙通关宝箱")
    public static final int ISLAND_BOX_REWARD = 2300;
    @NoteField(value = "迷失神庙使用复活石")
    public static final int ISLAND_USE_STONE = 2301;
    @NoteField(value = "迷失神庙挑战奖励")
    public static final int ISLAND_CHALLENGE_REWARD = 2302;

    @NoteField(value = "水晶峡谷挑战")
    public static final int SPICE_FB_CHALLENGE = 2400;
    @NoteField(value = "水晶峡谷星数宝箱")
    public static final int SPICE_FB_BOX_RWD = 2402;
    @NoteField("水晶峡谷每日奖励")
    public static final int SPICE_FB_DAILY_RWD = 2403;
    @NoteField("水晶峡谷章节奖励")
    public static final int SPICE_FB_CHAPTER_RWD = 2404;

    @NoteField(value = "排行榜奖励")
    public static final int RANK_REWARD = 2500;
    @NoteField(value = "排行榜点赞")
    public static final int RANK_ADMIRE_REWARD = 2501;

    @NoteField(value = "英雄召唤-必中")
    public static final int HERO_CALL_CERTAIN = 2600;
    @NoteField(value = "英雄召唤-召唤")
    public static final int HERO_CALL_EXE = 2601;
    @NoteField(value = "英雄召唤-累计次数兑换奖励")
    public static final int HERO_CALL_AD_TIMES_REWARD = 2602;
    @NoteField(value = "限定召唤-召唤")
    public static final int RESTRICT_CALL_DO_CALL = 2603;
    @NoteField(value = "英雄召唤-高级召唤-心愿食灵强制清除CD时间")
    public static final int HC_WISH_CLEAR_CD_TIME = 2604;
    @NoteField(value = "召唤树(食神)召唤-召唤")
    public static final int NATURE_CALL_EXE = 2605;
    @NoteField(value = "召唤树(食神)召唤-置换英雄")
    public static final int NATURE_EXCHANGE_CONFIRM = 2606;


    @NoteField(value = "天赋升级")
    public static final int TALENT_UPGRADE = 2700;
    @NoteField(value = "天赋回退")
    public static final int TALENT_BACK = 2701;
    @NoteField(value = "天赋栏位开启")
    public static final int TALENT_BOX_UNLOCK = 2702;


    @NoteField(value = "世界boss挑战")
    public static final int WORLD_BOSS_CHALLENGE = 2800;
    @NoteField(value = "世界boss排行")
    public static final int WORLD_BOOS_RANK = 2801;
    @NoteField(value = "任务奖励领取")
    public static final int TASK_RWD_REQ = 2900;

    @NoteField(value = "日常副本买次数")
    public static final int DAILY_FB_BUY_TIMES = 3000;

    @NoteField(value = "日常副本挑战")
    public static final int DAILY_FB_CHALLENGE = 3001;

    @NoteField(value = "每日副本首通奖励")
    public static final int DAILY_FB_FIRST_PASS_REWARD = 3002;

    @NoteField(value = "每日副本扫荡奖励")
    public static final int DAILY_FB_MOP_REWARD = 3003;
    @NoteField("所有每日副本一键扫荡奖励")
    public static final int ALL_DAILY_FB_MOP_REWARD = 3004;

    @NoteField(value = "英雄时装升级")
    public static final int HERO_SKIN_LEVEL_UP = 3100;
    @NoteField("英雄时装商城购买")
    public static final int HERO_SKIN_MALL_BUY = 3101;


    @NoteField(value = "副本挑战次数购买")
    public static final int PLAY_TIMES_BUY = 3200;

    @NoteField(value = "每日签到 签到奖励")
    public static final int SIGN_DAILY_SIGN_REWARD = 3300;
    @NoteField(value = "每日签到 累计奖励")
    public static final int SIGN_DAILY_ADD_UP_REWARD = 3301;
    @NoteField(value = "每日签到 额外签到奖励")
    public static final int SIGN_DAILY_SIGN_REWARD_EXTRA = 3302;

    @NoteField(value = "交易坊-一次性基金 普通奖励")
    public static final int TRADE_MALL_ONCE_FUND_NORMAL = 3400;
    @NoteField(value = "交易坊-一次性基金 高级奖励")
    public static final int TRADE_MALL_ONCE_FUND_ADVANCE = 3401;
    @NoteField(value = "交易坊-循环月基金")
    public static final int TRADE_MALL_LOOP_MONTH_FUND = 3402;
    @NoteField(value = "交易坊-幻玉充值")
    public static final int TRADE_MALL_PAY_M1 = 3403;
    @NoteField(value = "交易坊-幻晶兑换")
    public static final int TRADE_MALL_EXCHANGE_TOKEN = 3404;
    @NoteField(value = "交易坊-礼包补给")
    public static final int TRADE_MALL_TREASURE_SUPPLY = 3405;
    @NoteField(value = "交易坊-月卡")
    public static final int TRADE_MALL_MONTH_CARD = 3406;
    @NoteField(value = "交易坊-一次性基金 一键领取")
    public static final int TRADE_MALL_ONCE_FUND_ONE_CLICK = 3407;
    @NoteField(value = "交易坊-珍宝商铺")
    public static final int TRADE_MALL_LUXURY_SHOP = 3408;
    @NoteField(value = "交易坊-循环月基金")
    public static final int TRADE_MALL_LOOP_MONTH_FUND_CHEAP = 3409;

    @NoteField(value = "星格一键研制")
    public static final int SPICE_BATCH_CALL = 3500;
    @NoteField(value = "星格研制")
    public static final int SPICE_CALL = 3501;
    @NoteField(value = "星格开运")
    public static final int SPICE_GOOD_LUCK = 3502;
    @NoteField(value = "占星一键领取")
    public static final int SPICE_REWARD = 3503;
    @NoteField(value = "占星领取单个奖励")
    public static final int SPICE_ONE_REWARD = 3504;

    @NoteField(value = "好友送礼")
    public static final int FRIEND_SEND_REWARD = 3600;
    @NoteField(value = "好友收礼")
    public static final int FRIEND_RECV_REWARD = 3601;
    @NoteField(value = "好友一键收送礼物")
    public static final int FRIEND_FAST_REWARD = 3602;
    @NoteField(value = "好友援助支援奖励")
    public static final int FRIEND_AID_REWARD = 3700;
    @NoteField(value = "好友援助被雇佣奖励")
    public static final int FRIEND_BORROW_REWARD = 3701;

    @NoteField("无尽轮回挑战奖励")
    public static final int ENDLESS_PASS_REWARD = 3800;
    @NoteField("无尽试炼首通奖励")
    public static final int ENDLESS_FIRST_PASS_REWARD = 3801;
    @NoteField("无尽试炼排行榜奖励")
    public static final int ENDLESS_RANK_REWARD = 3802;

    @NoteField("地宫探险事件奖励")
    public static final int UDG_PALACE_EVENT_REWARD = 3900;
    @NoteField("地宫探险购买商品")
    public static final int UDG_PALACE_BUY_ITEM = 3901;
    @NoteField("地宫探险任务奖励")
    public static final int UDG_PALACE_TASK_REWARD = 3902;
    @NoteField("地宫探险一键挑战")
    public static final int UDG_PALACE_AUTO_CHALLENGE = 3903;

    @NoteField(value = "精英赛排行奖励")
    public static final int ELITE_RACE_RANK = 4000;
    @NoteField(value = "精英赛竞猜奖励")
    public static final int ELITE_RACE_BET = 4001;
    @NoteField(value = "精英赛任务奖励")
    public static final int ELITE_RACE_TASK = 4002;
    @NoteField(value = "精英赛红包")
    public static final int ELITE_RACE_RED_PACK = 4003;

    @NoteField(value = "录像点赞")
    public static final int VIDEO_ADMIRE = 4200;

    @NoteField(value = "种族禁地挑战")
    public static final int FORBIDDEN_CHALLENGE = 4300;
    @NoteField(value = "种族禁地购买挑战次数")
    public static final int TOTEMPLE_BUY_TIMES = 4301;
    @NoteField(value = "种族禁地排行")
    public static final int FORBIDDEN_RANK = 4302;
    @NoteField(value = "种族禁地-扫荡")
    public static final int FORBIDDEN_MOP_REWARD = 4303;

    @NoteField(value = "种族禁地-混沌之地挑战")
    public static final int FM_CHALLENGE = 4400;
    @NoteField(value = "种族禁地-混沌之地购买挑战次数")
    public static final int BIRTH_CHART_FB_BUY_TIMES = 4401;
    @NoteField(value = "种族禁地-混沌之地宝箱奖励")
    public static final int BIRTH_CHART_FB_BOX_REWARD = 4402;
    @NoteField(value = "种族禁地-混沌之地选择奖励")
    public static final int FM_PICK_RWD = 4403;
    @NoteField(value = "种族禁地-混沌之地排行")
    public static final int FORBIDDEN_MESS_RANK = 4404;


    @NoteField(value = "任务奖励")
    public static final int TASK_RWD = 4500;
    @NoteField(value = "主线任务奖励")
    public static final int MAINLINE_REWARD = 4501;
    @NoteField(value = "日常任务任务奖励")
    public static final int TASK_DAILY_REWARD = 4502;
    @NoteField(value = "周常任务任务奖励")
    public static final int TASK_WEEKLY_REWARD = 4503;
    @NoteField(value = "成就任务奖励")
    public static final int ACHIEVEMENT_REWARD = 4504;
    @NoteField(value = "历练任务奖励")
    public static final int EXPERIENCE_REWARD = 4505;
    @NoteField(value = "日常任务活跃度宝箱奖励")
    public static final int TASK_DAILY_BOX_REWARD = 4506;
    @NoteField(value = "功能开启系列引导奖励")
    public static final int FUNC_SERIES_GUIDE_REWARD = 4507;
    @NoteField("成就点数奖励")
    public static final int ACHIEVEMENT_POINT_REWARD = 4508;

    @NoteField("荣誉挂件等级奖励")
    public static final int PENDENT_LEVEL_RWD = 4600;

    @NoteField("农场种子升级")
    public static final int FARM_SEED_LEVEL_UP = 4700;
    @NoteField("农场地块升级")
    public static final int FARM_GROUND_LEVEL_UP = 4701;
    @NoteField("农场一键种植")
    public static final int FARM_FAST_PLANT = 4702;
    @NoteField("农场收获奖励")
    public static final int FARM_GAIN_REWARD = 4703;
    @NoteField("农场预设种子升级")
    public static final int FARM_PRE_SEED_LEVEL_UP = 4704;
    @NoteField("农场一键预设")
    public static final int FARM_FAST_PRE_PLANT = 4705;
    @NoteField("农场清除cd")
    public static final int FARM_CLEAR_CD = 4706;
    @NoteField("农场vip开通")
    public static final int FARM_VIP_BUY = 4707;
    @NoteField("农场每日奖励")
    public static final int FARM_DAILY_REWARD = 4708;
    @NoteField("农场预设直接领奖")
    public static final int FARM_PRE_PLANT_DIRECT_REWARD = 4709;

    @NoteField("水晶珍藏次数奖励")
    public static final int CRYSTALL_DRAW_TIMES_REWARD = 4800;
    @NoteField("水晶珍藏召唤奖励")
    public static final int CRYSTALL_DRAW_CALL_REWARD = 4801;


    @NoteField(value = "食神之路任务奖励")
    public static final int GOD_STREET_TASK_REWARD = 5001;
    @NoteField(value = "食神之路等级阶段奖励")
    public static final int GOD_STREET_STAGE_REWARD = 5002;


    @NoteField(value = "限时礼包")
    public static final int LIMIT_GIFT_PACKAGE_BUY = 5100;
    @NoteField(value = "限时礼包-开服天数")
    public static final int LIMIT_DAY_GIFT_PACKAGE_BUY = 5101;
    @NoteField("限时礼包道具购买")
    public static final int LIMIT_GIFT_ITEM_BUY = 5102;

    @NoteField("穿厨具")
    public static final int KITCHENWARE_ON = 5200;
    @NoteField("脱厨具")
    public static final int KITCHENWARE_OFF = 5201;
    @NoteField("厨具升级")
    public static final int KITCHENWARE_LEVEL_UP = 5202;
    @NoteField("厨具重铸")
    public static final int KITCHENWARE_RECAST = 5203;
    @NoteField("厨具突破")
    public static final int KITCHENWARE_BREAK = 5204;
    @NoteField("厨具分解")
    public static final int KITCHENWARE_DECOMPOSE = 5205;

    @NoteField(value = "英雄天赋-领悟")
    public static final int LEARN_TALENT = 6000;

    @NoteField(value = "英雄天赋-升级")
    public static final int UPGRATE_TALENT = 6001;

    @NoteField(value = "英雄天赋-遗忘")
    public static final int FORGET_TALENT = 6002;

    @NoteField(value = "宝石镶嵌")
    public static final int GEM_ON = 7002;
    @NoteField(value = "宝石拆卸")
    public static final int GEM_OFF = 7003;
    @NoteField(value = "宝石进阶")
    public static final int GEM_GRADE_UP = 7004;
    @NoteField(value = "宝石分解")
    public static final int GEM_RECYCLE = 7005;
    @NoteField(value = "宝石合成")
    public static final int GEM_COMPOSITE = 7006;
    @NoteField("宝石重铸")
    public static final int GEM_REFORGE = 7007;

    @NoteField(value = "铭文装备")
    public static final int INSCRIPTION_ON = 8001;
    @NoteField(value = "铭文卸下")
    public static final int INSCRIPTION_OFF = 8002;
    @NoteField(value = "铭文升级")
    public static final int INSCRIPTION_LEVEL_UP = 8003;
    @NoteField(value = "铭文分解")
    public static final int INSCRIPTION_BREAK = 8004;
    @NoteField(value = "战令")
    public static final int A_WAR_ORDER = 10000;

    @NoteField(value = "战令商店")
    public static final int A_WAR_ORDER_MALL = 10001;

    @NoteField(value = "坊主特权")
    public static final int A_PRIVILEGE_MALL_BUY = 10201;

    @NoteField(value = "购买特权")
    public static final int BUY_PRIVILEGE = 10202;

    @NoteField(value = "购买特权限时奖励")
    public static final int BUY_PRIVILEGE_LIMIT_REWARD = 10203;

    @NoteField(value = "庙街食神记奖励")
    public static final int BATTLE_ROYALE_REWARD = 10300;

    @NoteField(value = "庙街食神记解锁章节")
    public static final int BATTLE_ROYALE_UNLOCK = 10301;

    @NoteField(value = "庙街食神记邮件补发奖励")
    public static final int BATTLE_ROYALE_MAIL_REWARD = 10302;

    @NoteField(value = "超值首充")
    public static final int ACT_SUPER_FIRST_PAY = 10401;

    @NoteField(value = "七日登录")
    public static final int ACT_SEVEN_DAY_LOGIN = 10501;
    @NoteField(value = "自然日登录")
    public static final int NATURE_SEVEN_DAY_LOGIN = 10502;

    @NoteField(value = "七日特训")
    public static final int ACT_SEVEN_DAY_SPECIAL_TRAINING = 10601;

    @NoteField(value = "任务活动奖励")
    public static final int TASK_ACTIVITY_REWARD = 10700;

    @NoteField(value = "限时兑换")
    public static final int ACT_HANG_DROP = 10701;

    @NoteField(value = "挂机掉落-英雄兑换材料")
    public static final int HANG_DROP_HERO_EXCHANGE = 10702;
    @NoteField("挂机掉落-星语星愿")
    public static final int HANG_DROP_SPICE_UP = 10703;
    @NoteField("挂机掉落-许愿祝福")
    public static final int HANG_DROP_WISH_BLESSING = 10704;
    @NoteField("挂机掉落-钻石排行")
    public static final int HANG_DROP_CROSS_DIAMOND = 10705;
    @NoteField("挂机掉落-神装排行")
    public static final int HANG_DROP_CROSS_GOD_EQUIP = 10706;

    @NoteField(value = "英雄上新-商店")
    public static final int ACT_HERO_UP_LIMIT_SHOP = 10801;

    @NoteField(value = "英雄上新-升星专属")
    public static final int ACT_HERO_STAR_UP_GIFT = 10802;

    @NoteField(value = "英雄上新-召唤")
    public static final int ACT_HERO_UP_CALL = 10803;

    @NoteField(value = "英雄上新-召唤进度奖励")
    public static final int ACT_HERO_UP_CALL_PROGRESS_REWARD = 10804;

    @NoteField(value = "英雄上新-签到奖励")
    public static final int ACT_HERO_UP_SIGN_REWARD = 10805;

    @NoteField(value = "积天豪礼")
    public static final int REBATE_REWARD = 10900;

    @NoteField(value = "招财奖励")
    public static final int GOLD_COME_ON_REWARD = 11000;

    @NoteField(value = "招财次数奖励")
    public static final int GOLD_COME_ON_TIMES_REWARD = 11001;

    @NoteField(value = "每日特惠购买")
    public static final int ACT_DAILY_GIFT = 11100;
    @NoteField(value = "每日特惠购买-免费奖励")
    public static final int ACT_DAILY_GIFT_FREE = 11101;

    @NoteField(value = "每日资源购买")
    public static final int DAILY_RES_GIFT_MALL_BUY = 11200;

    @NoteField(value = "每日资源兑换")
    public static final int DAILY_RES_EXCHANGE_MALL_EXCHANGE = 11201;

    @NoteField("排行榜活动奖励")
    public static final int RANK_ACTIVITY_REWARD = 11300;
    @NoteField("排行榜活动返利奖励")
    public static final int RANK_ACTIVITY_BACK_REWARD = 11301;

    @NoteField("限购商城购买")
    public static final int LIMIT_SHOP_BUY = 11400;

    @NoteField("每日充值")
    public static final int ACT_DAILY_RECHARGE = 11500;
    public static final int LIMIT_RECHARGE = 11501;

    @NoteField(value = "通用升星")
    public static final int COMMON_STAR_UP = 11600;

    @NoteField(value = "定制成长")
    public static final int CUSTOM_GROWTH = 11601;

    @NoteField(value = "百抽献礼(开服登录)")
    public static final int ACT_OPEN_LOGIN = 11700;

    @NoteField(value = "美食猎人")
    public static final int FOOD_HUNTER = 11800;

    @NoteField(value = "美食猎人-礼包")
    public static final int FOOD_HUNTER_GIFT = 11801;

    @NoteField(value = "美食猎人-商店")
    public static final int FOOD_HUNTER_SHOP = 11802;

    @NoteField(value = "美食猎人-累充奖励")
    public static final int FOOD_HUNTER_TOTAL = 11803;

    @NoteField(value = "美食猎人-每日充值奖励")
    public static final int FOOD_HUNTER_DAILY = 11804;

    @NoteField(value = "心愿指针")
    public static final int WISH_POINTER = 11805;

    @NoteField(value = "灵器上新礼包奖励")
    public static final int FAIRY_NEW_GIFT_REWARD = 11900;

    @NoteField(value = "段位赛-挑战")
    public static final int DWS_CHALLENGE = 12001;
    @NoteField(value = "段位赛-竞猜")
    public static final int DWS_GUESS = 12002;
    @NoteField(value = "段位赛-赛季首达段位奖励")
    public static final int DWS_DW_REWARD = 12003;
    @NoteField(value = "段位赛-赛季结算奖励")
    public static final int DWS_SETTLE_REWARD = 12004;
    @NoteField(value = "段位赛-挂机奖励")
    public static final int DWS_HANG_REWARD = 12005;
    @NoteField(value = "段位赛-助威")
    public static final int DWS_CHEER = 12006;

    @NoteField(value = "冠军赛-排行榜奖励")
    public static final int CHAMPION_RANK_REWARD = 13004;
    @NoteField(value = "冠军赛-竞猜下注奖励")
    public static final int CHAMPION_BET_REWARD = 13005;

    @NoteField("限定召唤-领取抽指定次数奖励")
    public static final int RESTRICT_CALL_GET_REWARD = 12200;

    @NoteField("战力冲刺")
    public static final int POWER_DASH = 12300;

    @NoteField("天梯赛-挑战奖励")
    public static final int LADDER_CHALLENGE_RWD = 12400;

    @NoteField("天梯赛-扫荡奖励")
    public static final int LADDER_MOP_RWD = 12401;

    @NoteField("天梯赛-每周奖励")
    public static final int LADDER_SEASON_RWD = 12402;

    @NoteField("矿洞争霸-挑战区 挂机奖励")
    public static final int MINECRAFT_CHALLENGE_HANG_REWARD = 12500;
    @NoteField("矿洞争霸-挑战区 升级主城消耗")
    public static final int MINECRAFT_CHALLENGE_LEVEL_UP_COST = 12501;
    @NoteField("矿洞争霸-采集区 战斗奖励")
    public static final int MINECRAFT_MINE_AREA_FIGHT_REWARD = 12502;
    @NoteField("矿洞争霸-采集区 挂机奖励")
    public static final int MINECRAFT_MINE_AREA_HANG_REWARD = 12503;
    @NoteField("矿洞争霸-采集区 保护矿点")
    public static final int MINECRAFT_MINE_AREA_PROTECT = 12504;
    @NoteField("矿洞争霸-采集区 增加挑战次数")
    public static final int MINECRAFT_MINE_AREA_ADD_FIGHT = 12505;


    @NoteField("周卡-购买奖励")
    public static final int WEEK_CARD = 12600;

    @NoteField("周卡-每日奖励")
    public static final int WEEK_CARD_DAILY = 12601;
    @NoteField("购买周卡")
    public static final int BUY_WEEK_CARD = 12602;

    @NoteField("永久契约奖励")
    public static final int FOREVER_CONTRACT_DAILY_REWARD = 12700;
    @NoteField("永久契约购买")
    public static final int FOREVER_CONTRACT_BUY_REWARD = 12701;

    @NoteField("全服限购购买")
    public static final int ZONE_LIMT_BUY_RWD = 12800;

    @NoteField("全服限购宝箱")
    public static final int ZONE_LIMT_BOX_RWD = 12801;

    @NoteField("星格up返利")
    public static final int SPICE_UP_BACK_REWARD = 12900;

    @NoteField("心愿定制购买礼包")
    public static final int CUSTOM_MADE_GIFT_REWARD = 14400;

    @NoteField("阵法激活")
    public static final int FORMATIONS_ACTIVE = 14500;
    @NoteField("阵法升级")
    public static final int FORMATIONS_LEVEL_UP = 14501;

    @NoteField("合服活动-连续充值-单项")
    public static final int MERGE_CONTINUOUS_RECHARGE_TASK = 14600;
    @NoteField("合服活动-连续充值-累计")
    public static final int MERGE_CONTINUOUS_RECHARGE_ADD_UP = 14601;
    @NoteField("合服活动-登录")
    public static final int MERGE_LOGIN = 14602;
    @NoteField("合服活动-全服进度")
    public static final int MERGE_SERVER_TARGET = 14603;
    @NoteField("合服一次性奖励")
    public static final int MERGE_ONCE_REWARD = 14604;

    @NoteField("合成-材料合成")
    public static final int ITEM_COMPOSE = 14700;
    @NoteField("合成-装备合成")
    public static final int EQUIP_COMPOSE = 14710;
    @NoteField("合成-装备快速合成")
    public static final int EQUIP_FAST_COMPOSE = 14711;
    @NoteField("超越装备合成")
    public static final int OVERSTEP_EQUIP_COMPOSE = 14712;

    @NoteField("资源找回")
    public static final int RES_FIND_BACK = 14800;

    @NoteField("连续充值-单项")
    public static final int ACT_CONTINUOUS_RECHARGE_TASK = 14900;
    @NoteField("连续充值-累计")
    public static final int ACT_CONTINUOUS_RECHARGE_ADD_UP = 14901;

    @NoteField("吞噬英雄/注灵")
    public static final int EAT_HERO = 15000;
    @NoteField("注灵领取奖励")
    public static final int EAT_HERO_REWARD = 15001;


    @NoteField("转盘")
    public static final int TURN_TABLE = 15100;
    @NoteField("转盘幸运值奖励")
    public static final int TURN_TABLE_LUCKY = 15101;

    @NoteField("魔塔-结束奖券补偿")
    public static final int DU_OVER_RETURN = 15120;

    @NoteField("独立卡池召唤")
    public static final int SPE_CALL_EXE = 15200;
    @NoteField("独立卡池召唤-兑换")
    public static final int SPE_EXCHANGE = 15201;
    @NoteField("独立卡池召唤-升星礼包免费")
    public static final int SPE_STAR_GIFT_FREE = 15202;
    @NoteField("独立卡池召唤-升星礼包购买")
    public static final int SPE_STAR_GIFT_BUY = 15203;
    @NoteField("独立卡池召唤-海报奖励")
    public static final int SPE_POSTER_REWARD = 15204;
    @NoteField("独立卡池召唤-战令奖励")
    public static final int SPE_WAR_ORDER_REWARD = 15205;

    @NoteField("跨服boss领取任务")
    public static final int CROSS_BOSS_TAKE_TASK = 16001;

    @NoteField("跨服boss队长奖励")
    public static final int CROSS_BOSS_LEADER_RWD = 16002;

    @NoteField("跨服boss击杀奖励")
    public static final int CROSS_BOSS_KILL_RWD = 16003;

    @NoteField("跨服boss稀有奖励")
    public static final int CROSS_BOSS_RARE_RWD = 16004;

    @NoteField("英雄试炼免费奖励")
    public static final int HERO_TRIAL_FREE_RWD = 16100;

    @NoteField("英雄试炼付费奖励")
    public static final int HERO_TRIAL_PAY_RWD = 16101;

    @NoteField("佳肴美馔烹饪")
    public static final int DELICACIES_COOK = 17000;
    @NoteField("佳肴美馔阶段奖励")
    public static final int DELICACIES_DONE_REWARD = 17001;
    @NoteField("佳肴美馔终极奖励")
    public static final int DELICACIES_FINAL_REWARD = 17002;

    @NoteField("新限购商城-新手")
    public static final int ACT_COND_SHOP_ROOKIE = 17100;
    @NoteField("新限购商城-每周")
    public static final int ACT_COND_SHOP_WEEK = 17101;
    @NoteField("新限购商城-每月")
    public static final int ACT_COND_SHOP_MONTH = 17102;
    @NoteField("新限购商城-每日")
    public static final int ACT_DAILY_SHOP_NEW = 17103;
    @NoteField("新限购商城-每日-额外奖励")
    public static final int ACT_DAILY_SHOP_EXTRA = 17104;
    @NoteField("新限购商城-每日-新")
    public static final int ACT_DAILY_SHOP_NEW_TWO = 17105;

    @NoteField("全民挂机领取普通奖励")
    public static final int ACT_ALL_ON_HOOK_GET_NORMAL_REWARD = 17200;

    @NoteField("全民挂机领取特权奖励")
    public static final int ACT_ALL_ON_HOOK_GET_PRIVILEGE_REWARD = 17201;
    @NoteField("全民挂机领取全部奖励")
    public static final int ACT_ALL_ON_HOOK_GET_ALL_REWARD = 17202;

    @NoteField(value = "公会战挑战")
    public static final int GUILD_WAR_CHALLENGE = 18000;

    @NoteField(value = "公会战宝箱")
    public static final int GUILD_WAR_BOX = 18001;

    @NoteField(value = "公会战点赞")
    public static final int GUILD_WAR_ADMIRE = 18002;

    @NoteField(value = "公会战赛季段位")
    public static final int GUILD_WAR_SEASON_RANK = 18003;

    @NoteField(value = "公会战最强公会")
    public static final int GUILD_WAR_TOP_GUILD = 18004;

    @NoteField(value = "公会战最强玩家")
    public static final int GUILD_WAR_TOP_ROLE = 18005;

    @NoteField("食灵赐福-商品")
    public static final int ACT_BLESSING_ITEM = 18100;
    @NoteField("食灵赐福-大奖")
    public static final int ACT_BLESSING_REWARD = 18101;

    @NoteField("双旦活动-拼图活动")
    public static final int ACT_DD_PUZZLE = 18200;
    @NoteField("双旦活动-小战令")
    public static final int ACT_DD_WAR_ORDER_MINI = 18201;

    @NoteField("天赋定制-购买礼包")
    public static final int TALENT_CUSTOM_MADE_REWARD = 18300;

    @NoteField("小游戏累充奖励")
    public static final int ACCUMULATIVE_PAY_REWARD = 18400;

    @NoteField("汤圆活动抽取")
    public static final int TANG_YUAN_CALL = 18500;

    @NoteField("汤圆活动结束返还奖励")
    public static final int TANG_YUAN_OVER_RETURN = 18501;

    @NoteField("灵器特惠购买")
    public static final int ACT_FAIRY_GIFT = 18700;

    @NoteField("十连自选")
    public static final int TEN_DRAWS = 18800;

    @NoteField("自选礼包")
    public static final int OPTIONAL_GIFT = 18900;
    @NoteField("自选礼包-免费")
    public static final int OPTIONAL_GIFT_FREE = 18901;

    @NoteField("up池限定召唤-点将台")
    public static final int UP_POOL_HERO = 19000;
    @NoteField("up池限定召唤-灵器屋")
    public static final int UP_POOL_FAIRY = 19001;
    @NoteField("up池限定召唤-神魔共生")
    public static final int UP_POOL_STRONG_HERO = 19002;
    @NoteField("up池限定召唤-自然系许愿")
    public static final int UP_POOL_NATURAL_WISH = 19003;

    @NoteField("英雄兑换")
    public static final int CONVERT_HERO = 19100;

    @NoteField("砸金蛋")
    public static final int GOLD_EGG = 19200;

    @NoteField("跨服擂台赛-每日挑战奖励")
    public static final int ARENA_DAILY_REWARD = 19300;
    @NoteField("跨服擂台赛-发起挑战")
    public static final int ARENA_CHALLENGE_ENTER = 19301;
    @NoteField("跨服擂台赛-挑战结果")
    public static final int ARENA_CHALLENGE_RESULT = 19302;
    @NoteField("跨服擂台赛-排行奖励")
    public static final int ARENA_RANK_REWARD = 19303;
    @NoteField("跨服擂台赛-点赞")
    public static final int ARENA_LIKE = 19304;

    @NoteField("神装寻宝")
    public static final int GOD_EQUIP = 19400;

    @NoteField("幸运福袋")
    public static final int LUCKY_BAG = 19500;
    @NoteField("幸运福袋-全服积分奖励")
    public static final int LUCKY_BAG_SCORE = 19501;
    @NoteField("幸运福袋-兑换")
    public static final int LUCKY_BAG_EXCHANGE = 19502;

    @NoteField("跨服boss击杀奖励")
    public static final int CROSS_BOSS_FARM_KILL = 19600;
    @NoteField("跨服BOSS随机奖励")
    public static final int CROSS_BOSS_FARM_EXTRA = 19601;
    @NoteField("跨服boss挑战奖励")
    public static final int CROSS_BOSS_FARM_FIGHT = 19602;

    @NoteField("聚宝盆奖励")
    public static final int ACT_DIAMOND_BOWL_REWARD = 19700;

    @NoteField("觉醒神树挑战奖励")
    public static final int GOD_TREE_FIGHT = 19800;
    @NoteField("觉醒神树通关奖励")
    public static final int GOD_TREE_PASS = 19801;
    @NoteField("觉醒神树扫荡奖励")
    public static final int GOD_TREE_MOP = 19802;

    @NoteField("福神降临奖励")
    public static final int FOOD_GOD_REWARD = 20010;
    @NoteField("福神降临自动领奖")
    public static final int FOOD_GOD_AUTO_REWARD = 20011;

    @NoteField("鉴宝坊")
    public static final int CUT_STONE = 20100;

    @NoteField("灵王祭祀")
    public static final int KING_SACRIFICE = 20200;
    @NoteField("王座争霸选拔赛挑战")
    public static final int THRONE_TRIAL_CHALLENGE = 20201;
    @NoteField("王座争霸选拔赛积分")
    public static final int THRONE_TRIAL_POINT = 20202;
    @NoteField("王座争霸选拔赛结算")
    public static final int THRONE_TRIAL_SETTLE = 20203;
    @NoteField("王座争霸淘汰赛排行")
    public static final int THRONE_KO_RANK = 20204;
    @NoteField("王座争霸淘汰赛冠军")
    public static final int THRONE_KO_CHAMPION = 20205;
    @NoteField("王座争霸竞猜")
    public static final int THRONE_BET = 20206;
    @NoteField("王座争霸冠军boss")
    public static final int THRONE_CHAMPION_BOSS = 20207;
    @NoteField("王座争霸全服boss")
    public static final int THRONE_ZONE_BOSS = 20208;

    @NoteField("丛林冒险-任务奖励")
    public static final int JUNGLE_TASK = 20300;
    @NoteField("丛林冒险-掠夺奖励")
    public static final int JUNGLE_ROB = 20301;
    @NoteField("丛林冒险-刷新消耗")
    public static final int JUNGLE_REFRESH_COST = 20302;
    @NoteField("丛林冒险-加速消耗")
    public static final int JUNGLE_SPEED_UP_COST = 20303;

    @NoteField("全服段位赛赛季结算奖励")
    public static final int GRADE_PVP_SETTLE_REWARD = 20400;
    @NoteField("全服段位赛六神奖励")
    public static final int GRADE_PVP_GOD_REWARD = 20401;


    @NoteField("组队竞技排行榜奖励")
    public static final int TEAM_PVP_RANK_RERARD = 20500;

    @NoteField("广告-快速作战")
    public static final int ADV_QUICK_FIGHT = 20600;
    @NoteField("广告-在线")
    public static final int ADV_ONLINE = 20601;
    @NoteField("广告-高级召唤")
    public static final int ADV_HIGH_CALL = 20602;

    @NoteField("灵宠-结交")
    public static final int HOLY_PET_ACTIVE = 20700;
    @NoteField("灵宠-好感等级")
    public static final int HOLY_PET_FAVOR_LEVEL = 20701;
    @NoteField("灵宠-亲密等级")
    public static final int HOLY_PET_CLOSENESS_LEVEL = 20702;
    @NoteField("灵宠-修炼等级")
    public static final int HOLY_PET_PRACTICE_LEVEL = 20703;
    @NoteField("灵宠-场景刷新")
    public static final int HOLY_PET_SCENE_REFRESH = 20704;
    @NoteField("灵宠-派遣奖励")
    public static final int HOLY_PET_SCENE_REWARD = 20705;
    @NoteField("灵宠-协助奖励")
    public static final int HOLY_PET_SUPPORT_REWARD = 20706;
    @NoteField("灵宠-协助排行榜奖励")
    public static final int HOLY_PET_SUPPORT_RANK_REWARD = 20707;

    @NoteField("许愿祝福幸运奖励")
    public static final int WISH_BLESSING_LUCKY_REWARD = 20800;

    @NoteField("月饼大作战")
    public static final int MOONCAKE_CHALLENGE_REWARD = 20900;
    @NoteField("月饼大作战-扫荡")
    public static final int MOONCAKE_MOP_REWARD = 20901;
    @NoteField("月饼大作战-兑换")
    public static final int MOONCAKE_EXCHANGE_REWARD = 20902;
    @NoteField("月饼大作战-战令")
    public static final int MOONCAKE_WARORDER_REWARD = 20903;

    @NoteField("周末献礼")
    public static final int WEEKEND_GIFT = 21000;

    @NoteField("BOSS试炼")
    public static final int BOSS_TRAIN_CHALLENGE = 21100;

    @NoteField("七日试炼-积分奖励")
    public static final int ACT_SEVEN_DAY_TRIAL_PROGRESS = 21200;

    @NoteField("天降锦鲤阶段奖励")
    public static final int LUCKY_CHARM_PERIOD_REWARD = 21300;

    @NoteField("月下比武星星奖励")
    public static final int MOON_FIGHT_STAR_REWARD = 21400;
    @NoteField("月下比武任务奖励")
    public static final int MOON_FIGHT_TASK_REWARD = 21401;

    @NoteField("渠道礼包")
    public static final int CHANNEL_GIFT = 59999;

    @NoteField(value = "GM邮件基础")
    public static final int GM_MAIL_BASE = 60000;

    @NoteField("批量邮件")
    public static final int BATCH_MAIL = 60001;

    @NoteField("VIP返利")
    public static final int VIP_REBATE = 60002;
    @NoteField("客服返利")
    public static final int KF_REBATE = 60003;

    @NoteField("收藏有礼")
    public static final int FAVORITE_RWD = 77777;

    @NoteField("邀请")
    public static final int INVITE = 77888;

    @NoteField("GM背包删除")
    public static final int GM_BAG_DEDUCT = 100000;

    @NoteField("英雄直购")
    public static final int HERO_DIRECT_PURCHASE = 20001;

    @NoteField("迷失幻境")
    public static final int LOST_DREAMLAND = 20002;

    @NoteField("天机阁")
    public static final int LOTTERY = 20003;

    @NoteField(value = "命运之扉挑战")
    public static final int DESTINY_GATE = 20004;
    @NoteField("皮肤抽奖")
    public static final int SKIN_DRAW = 20005;

    @NoteField("鲁比的宝藏")
    public static final int TREASURE = 20006;

    @NoteField("鲁比的宝藏-兑换")
    public static final int TREASURE_EXCHANGE = 20007;

    @NoteField("百抽狂欢")
    public static final int REVELRY = 20008;

    @NoteField(value = "魔塔挑战")
    public static final int M_TOWER = 20009;

    @NoteField("累天充值-免费")
    public static final int ACCUMULATE_DAY_PAY_FREE = 200100;
    @NoteField("累天充值-付费")
    public static final int ACCUMULATE_DAY_PAY = 200101;

    protected static Map<Integer, String> operationMap;

    static {
        operationMap = new HashMap<>();
        Field[] fields = GDOperation.class.getDeclaredFields();
        for (Field field : fields) {
            if (Modifier.isStatic(field.getModifiers())) {
                try {
                    NoteField noteField = field.getAnnotation(NoteField.class);
                    if (noteField != null) {
                        int opValue = (Integer) field.get(GDOperation.class);
                        if (operationMap.containsKey(opValue)) {
                            throw new Exception("重复的GDOperation value: " + opValue);
                        }
                        operationMap.put(opValue, noteField.value());
                    }
                } catch (Exception e) {
                    log.error("", e);
                }
            }
        }
    }

    public static String getDesc(int operation, int sub) {
        return operationMap.getOrDefault(operation, "未知操作" + operation);
    }

    @NoArgsConstructor
    @AllArgsConstructor
    private static class OperationConfig {
        public int code;
        public String desc;
    }

    public static void main(String[] args) {
        List<OperationConfig> configs = new ArrayList<>(operationMap.size());
        operationMap.forEach((code, desc) -> {
            if (code != 0) {
                configs.add(new OperationConfig(code, desc));
            }
        });
        try {
            byte[] jsonBytes = JsonCodec.instance().encodeBytes(configs);
            FileWrite.i.writeBytes(".tmp/operation.json", jsonBytes);
        } catch (Exception e) {
            log.error("", e);
        }
    }
}
